//
// Created by 神秘悟饭 on 2020/7/8.
//

#ifndef TEST_TORCH_ENHANCEMENT_H
#define TEST_TORCH_ENHANCEMENT_H
#include "enhancement.h"
#include "iostream"
#include <vector>
#include <torch/script.h>
#include <opencv2/opencv.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <string>
using namespace std;
using namespace cv;

Mat raw2Mat(FILE * fp,int width,int height);

vector<Mat> buildGaussianPyramid(Mat &image,int level);

vector<Mat> buildLapacianPyramid(Mat &image,int level);

Mat blend(Mat &image, vector<Mat> &pyramid);

void display(Mat image, char * windowName);

Mat pyramidBlending(Mat &image,int level);

Mat Enhancement(Mat &image);



#endif //TEST_TORCH_ENHANCEMENT_H



